"use strict";



function disp_current_page() {
	$("#showarea").addClass("page_view");
	$("#showarea").removeClass("tree_view");
	if (current_domid) {
		//		$("#play_title").text($("#"+current_domid).children(".task_title").text());
		//		$("#play_content").text($("#"+current_domid).children(".task_comment").text());
		$('div.task.current_page').removeClass('current_page');
		$('#' + current_domid).addClass("current_page");
		$(".current_page").show();
	} else {
		current_domid = $("#showarea").children("div.task").first().attr("id");
		$('div.task.current_page').removeClass('current_page');
		$('#' + current_domid).addClass("current_page");
	}
	$('#page_num').text($("#" + current_domid).attr("data-page"));
}

function listpage() {
	$("#showarea").toggleClass("page_view");
	$("#showarea").toggleClass("tree_view");
}

// 下一页
function nextpage() {
	if ($("#" + current_domid).children("div.task").is(".task")) {//假如有下级子任务
		current_domid = $("#" + current_domid).children("div.task").first().attr("id");
	} else {
		if ($("#" + current_domid).next("div.task").is(".task")) {//假如有下一个弟弟任务
			current_domid = $("#" + current_domid).next("div.task").attr("id");
		} else {//回到上级任务
			if ($("#" + current_domid).parent("div.task").next("div.task").is(".task")) {
				current_domid = $("#" + current_domid).parents("div.task").first().next("div.task").is(".task");//叔叔任务
			} else {

			}
			//current_domid="";
			$("#btn_next").addClass("btn_disable");
			$("#btn_next").removeClass("btn_primary");
			$("#btn_prev").addClass("btn_primary");
			$("#btn_prev").removeClass("btn_disable");

			return;
		}
	}
	disp_current_page();
}


function prevpage() {
	if ($("#" + current_domid).prev("div.task").is(".task")) {
		current_domid = $("#" + current_domid).prev("div.task").attr("id");
	} else {
		if ($("#" + current_domid).closest("div.task").is(".task")) {
			current_domid = $("#" + current_domid).closest.attr("id");
		} else {
			current_domid = "";
			$("#btn_prev").addClass("btn_disable");
			$("#btn_prev").removeClass("btn_primary");

			$("#btn_next").addClass("btn_primary");
			$("#btn_next").removeClass("btn_disable");
			return;
		}
	}
	disp_current_page();
}

function prevpage3() {

	if ($("#" + current_domid).prev("div.task").is(".task")) {//假如有上一个兄任务
		current_domid = $("#" + current_domid).next("div.task").attr("id");
	} else {//回到第一个上级任务
		current_domid = $("#" + current_domid).parent("div.task").attr("id");//叔叔任务
	}

	disp_current_page();
}

function nextpage2() {
	//    var vid=$(".current_page div.task:visible div.task").last().attr("id");
	//    console.log(vid);
	var newpage = Number($("#" + current_domid).attr("data-page")) + 1;
	//    var newpage=Number($("#"+vid).attr("data-page"))+1;
	current_domid = $("div.task[data-page=" + newpage + "]").attr("id");
	console.log("page:" + newpage + "current_domid:" + current_domid);
	disp_current_page();
}
function nextpage3() {

	if ($("#" + current_domid).next("div.task").is(".task")) {//假如有下一个弟弟任务
		current_domid = $("#" + current_domid).next("div.task").attr("id");
	} else {//往上追溯至第一个旁系叔叔任务
		if ($("#" + current_domid).parents("div.task").next("div.task").first().is(".task")) {
			current_domid = $("#" + current_domid).parents("div.task").next("div.task").first().attr("id");//叔叔任务
		} else {

		}
	}

	disp_current_page();
}
function prevpage2() {
	var newpage = Number($("#" + current_domid).attr("data-page")) - 1;
	if (newpage == 0) {
		current_domid = "endpage";
	} else {
		current_domid = $("div.task[data-page=" + newpage + "]").attr("id");
	}
	console.log("page:" + newpage + "current_domid:" + current_domid);
	disp_current_page();
}

// 展示子节点
function child_node(){

}

function gopage(index) {
	var newpage = index;
	current_domid = $("div.task[data-page=" + newpage + "]").attr("id");
	console.log("page:" + newpage + "current_domid:" + current_domid);
	disp_current_page();
}

function goendpage() {
	current_domid = "endpage"
	//	console.log("page:"+newpage+"current_domid:"+current_domid);
	disp_current_page();
}

function click_to_page() {
	current_domid = $("div.task[data-page=" + newpage + "]").attr("id");
}



function new_task_for_play(item) {
	var new_dom_id = unique_dom_id++;
	var htmlstr = '<div  data-taskid="' + item.id + '" ';
	htmlstr += ' class="task child_fold " id="' + new_dom_id + '"';
	htmlstr = htmlstr
		+ ' data-sort="' + item.sort + '"'
		+ ' data-stage="' + item.stage + '"'
		+ ' data-archive="' + item.archive + '"'
		+ ' data-getway="' + item.getway + '"'
		+ ' data-intags="' + item.intags + '"'
		+ ' data-tags="' + item.tags + '"';
	htmlstr += '>';
	//   htmlstr+='<div >';
	//	console.log(htmlstr);
	htmlstr += new_task_header_for_play(item) 
			+ '</div>';
	return htmlstr;
}

function new_task_header_for_play(item) {
	var htmlstr = '';

	//	+'<i  class="fa '+node_type_icon[item.nodetype]+'"></i>'	
	//	htmlstr+='<span class="task_title task_for_drag bounceIn animated">'+item.title+'</span>';
	htmlstr += '<div class="task_header">';
	htmlstr += '<a class="icon_fold" href="###" ><i  class="fa"></i></a>';
	htmlstr += '<span class="task_title task_for_drag">' + item.title + '</span>';
	htmlstr += '<span class="iconbar">'
	// htmlstr += '<a class="icon_fold" href="###" ><i  class="fa"></i></a>';
	
	// htmlstr+='<a class="expend_fold" href="###" ><i  class="fa fa-circle"></i></a>';
	//	htmlstr+='<span class="task_stage"><i  class="fa '+stage_icon[item.stage]+'"></i></span>';//使用font-awesome的字体图标
	htmlstr += '<a class="stage_icon"><i></i></a>';//使用样式表图形文件图标
	//	htmlstr+='<img class="stage_icon" src="'+stage_svg_icon[item.stage]+'" >';//使用图标数组

	if (item.internal_link > 0) {
		htmlstr = htmlstr + '<a class="task_internal_link" href="###" data-internal_link="' + item.internal_link + '" title="关联到其它任务"><i class="fa fa-share-square" onclick="position_task_id(' + item.internal_link + ')"></i></a>';
	} else {
		htmlstr += '<a class="task_internal_link"></a>';
	}

	if (item.link) {
		let r = item.link.match(/http[s]?\:\/\/([^\/]*)/);
		//		console.log(r); 
		if (r) {
			//			console.log(r[0]);
			htmlstr = htmlstr + '<a class="task_link" href="' + item.link + '" target="_blank" title="外链" ><img  class="fa fa-link" src="' + r[0] + '/favicon.ico' + '" onerror="this.src=\'/_assets/icons/link.svg\';"></a>';
		} else {
			htmlstr = htmlstr + '<a class="task_link" href="' + item.link + '" target="_blank" title="外链"><i class="fa fa-link"></i></a>';
		}
	} else {
		htmlstr += '<a class="task_link"></a>';
	}
	if (item.comment) {
		htmlstr = htmlstr + '<a class="task_comment_icon" href="###"  title="备注"><i class="fa fa-comment"></i></a>';
	} else {
		htmlstr += '<a class="task_comment_icon"></a>';
		item.comment = '';
	}
	if (item.photo) {
		htmlstr = htmlstr + '<a class="task_photo_icon" href="###" title="图片" data-url="' + item.photo + '"><i class="fa fa-photo"></i></a>';
	} else {
		htmlstr += '<a class="task_photo_icon"></a>';
	}
	htmlstr += '<a class="magic_icon"><i class="fa"></i></a>';
	htmlstr += '</span>';
	htmlstr += '</div>';

	//	htmlstr+='<a class="icon_button btn_for_toolbar"  href="###"  title="操作面板'+item.id+'"><i  class="fa fa-lg fa-angle-double-right"></i></a>';

	//	htmlstr+='<div class="task_photo rotateIn animated " ><img src='+item.photo+' style="max-width:100%"></div>';
	htmlstr += '<div class="task_photo" ><img src=' + item.photo + ' style="max-width:100%"></div>';
	htmlstr += '<div class="task_comment " >' + html_encode(item.comment) + '</div>';

	return htmlstr;
}


function new_task_header2(item) {
	var htmlstr = '';
	//	htmlstr+='<div class="task_info_btn_bar">';


	//	htmlstr+='<span class="task_stage"><i  class="fa '+stage_icon[item.stage]+'"></i></span>';//使用font-awesome的字体图标
	htmlstr += '<a class="stage_icon"><i></i></a>';//使用样式表图形文件图标
	//	htmlstr+='<img class="stage_icon" src="'+stage_svg_icon[item.stage]+'" >';//使用图标数组

	htmlstr += '<a class="expend_fold" href="###" title="展开"><i  class="fa fa-folder-o"></i></a>'
	// if(item.start_date){
	// htmlstr+='<span class="start_date">&nbsp;'+String(item.start_date).substring(5,10)+'&nbsp;</span>';
	// }else{
	// htmlstr+='<span class="start_date"></span>';
	// }

	if (item.internal_link > 0) {
		htmlstr = htmlstr + '<a class="task_internal_link" href="###" data-internal_link="' + item.internal_link + '" title="关联到其它任务"><i class="fa fa-share-square" onclick="position_task_id(' + item.internal_link + ')"></i></a>';
	} else {
		htmlstr += '<a class="task_internal_link"></a>';
	}

	if (item.link) {
		r = item.link.match(/http[s]?\:\/\/([^\/]*)/);
		//		console.log(r); 
		if (r) {
			//			console.log(r[0]);
			htmlstr = htmlstr + '<a class="task_link" href="' + item.link + '" target="_blank" title="外链" ><img  class="fa fa-link" src="' + r[0] + '/favicon.ico' + '" onerror="this.src=\'/_assets/icons/link.svg\';"></a>';
		} else {
			htmlstr = htmlstr + '<a class="task_link" href="' + item.link + '" target="_blank" title="外链"><i class="fa fa-link"></i></a>';
		}
	} else {
		htmlstr += '<a class="task_link"></a>';
	}
	if (item.comment) {
		htmlstr = htmlstr + '<a class="task_comment_icon" href="###"  title="备注"><i class="fa fa-comment"></i></a>';
	} else {
		htmlstr += '<a class="task_comment_icon"></a>';
		item.comment = '';
	}

	//	htmlstr+='</div>';
	htmlstr += '<div class="task_title">' + item.title + '</div>';
	htmlstr += '<div class="task_pic_text_area">';
	htmlstr += '<div class="task_picture radius" >' + item.picture + '</div>';
	htmlstr += '<div class="task_comment radius" >' + item.comment + '</div>';
	htmlstr += '</div>';
	return htmlstr;
}

//取得task，并挂装到页面中
function get_task_and_append() {
	var loading = layer.msg('正从服务器上加载数据，请稍候！', { icon: 16 });
	var items;

	var root_task_id = $("#parm").attr("data-root");
	var dataurl= "/index.php/tasktree/getallchild/" + root_task_id +"/";
	// console.log(dataurl);

	$.getJSON("/index.php/tasktree/getallchild/" + $("#parm").attr("data-root"),
		function (dataGet) {
			//			console.log(dataGet);
			if (dataGet.data) {
				//					console.log(dataGet.data);
				items = dataGet.data;
				$.each(items, function (idx, item) { //生成所有任务，先挂装到不分类任务下
					// $("#showarea").append(new_task_for_play(item));
					$("#showarea").append(new_task_for_play(item));
				});
				//$("#temp div.task").hide();
				$.each(items, function (idx, item) { //所有任务依据自己的parnet挂装
					console.log(item);
					$(".task[data-taskid=" + item.parent + "]").append($(".task[data-taskid=" + item.id + "]"));
					$(".task[data-taskid=" + item.parent + "]").append($(".task[data-taskid=" + item.id + "]"));
				});

				layer.close(loading);

				// $("#temp").children("div.task").first().addClass("current_page");
				// current_domid=$("#listarea").children("div.task").first().attr("id");
				// console.log($("#listarea").children("div.task").first()); 	

				init_task_dom();
			}
		}
	);

	// get_data_and_append(dataurl,"#showarea",root_task_id,'ppt');


	$('#btn_refresh_all i').addClass('fa-spin');
}

//创建页面序号
function create_sort() {
	$('div.task').each(function (i) {
		console.log(i);
		i++;
		$(this).attr("data-page", i);
	});
	$('#page_sum').text($('div.task').length);
}

// 初始化任务节点
function init_task_dom() {

	$("#showarea>div.task").show();
	$("#showarea").append($("#endpage"));

	expend_icon_status();

	//创建页号
	create_sort();
	//设置标题
	document.title = $("#showarea div.task").first().children(".task_title").text();

	//动态设置背景（通过动态增加类的属性）
	var bgimg = $("#showarea div.task").first().children(".task_photo").children("img").attr("src");
	console.log(bgimg);
	// 将节点图片作为背景图
	// document.styleSheets[0].insertRule('.page_view .current_page {background-image:url("' + bgimg + '");}', 0);
	// document.styleSheets[0].insertRule('.page_view .current_page {background-size:100%', 0);
	
	//动态设置各部件的特效
	var intags = $("#showarea div.task").first().attr("data-intags");
	console.log(intags);
	if (intags) {
		var intags_arr = intags.split(" ");
		for (var i in intags_arr) {
			console.log(intags_arr[i]);
			var a = intags_arr[i].split('-');
			console.log(a);
			if (a[0] == 'animated') {
				switch (a[1]) {
					case 'header':
					case 'photo':
					case 'title':
					case 'comment':
						console.log(a[1]);
						$("#showarea div.task").find(".task_" + a[1]).addClass('animated');
						$("#showarea div.task").find(".task_" + a[1]).addClass(a[2]);
						break;
					case 'task'://设置当前页总体的特效
						$("#showarea div.task").find(".task").addClass('animated');
						document.styleSheets[0].insertRule('.page_view .current_page {animation-name:' + a[2] + ';}', 0);
				}
			}
		}
	}

	//					$("div.task[data-intags~='animated-photo']").childrens(".task_photo").addClass('animated');
	//					console.log($("div.task[data-intags|='animated']").attr("id"));
	//					$("div.task[data-intags|='animated-photo']").childrens(".task_photo").addClass('animated');
	//					$("div.task[data-intags|='animated-comment']").childrens(".task_comment").addClass('animated');

	disp_current_page();

}



function expend_icon_status() {
	//	$('div.task a.expend_fold i').css("color",'');
	//	$('div.task a.expend_fold i').addClass("color",'');
	//	$('div.task').parents('div.task').children(".task_header").children("a.expend_fold").children("i").addClass('fa-folder-o');
	$('div.task').parents('div.task').children(".task_header").children("a.expend_fold").children("i").removeClass('fa-circle').addClass('fa-folder-o');;
	//   $('div.task').parents('div.task').children(".task_header").children(".iconbar").children("a.expend_fold").children("i").addClass('fa-folder-o');
}
function expend_fold_by_domid(domid) {
	if ($("#" + domid + ">a.expend_fold i").hasClass('fa-folder-o')) {
		$("#" + domid).children('div.task').show(200);
		$("#" + domid).children('a.expend_fold').children('i').removeClass('fa-folder-o');
		$("#" + domid).children('a.expend_fold').children('i').addClass('fa-folder-open-o');
		$("#" + domid).children('a.expend_fold').attr('title', '折叠');
	} else {
		$("#" + domid).children('div.task').hide(200);
		$("#" + domid).children('a.expend_fold').children('i').addClass('fa-folder-o');
		$("#" + domid).children('a.expend_fold').children('i').removeClass('fa-folder-open-o');
		$("#" + domid).children('a.expend_fold').attr('title', '展开');
	}
}


$(document).ready(function () {

	//一键取得所有活动任务并挂装
	get_task_and_append();
	// init_task_dom();

	// 备注详情图标点击行为
	$("body").delegate('a.task_comment_icon', 'click', function () {
		$(event.target).closest('div.task').children('.task_comment').toggleClass('z-visualise');
		$(event.target).closest('div.task').removeClass('z-detail');
		$(".z-visualise").closest('div.task').addClass('z-detail');
	});

	// 照片图标点击行为
	$("body").delegate('a.task_photo_icon', 'click', function () {
		$(event.target).closest('div.task').children('.task_photo').toggleClass('z-visualise');
		$(event.target).closest('div.task').removeClass('z-detail');
		$(".z-visualise").closest('div.task').addClass('z-detail');
	});

	//展开图标点击行为
	$("body").delegate('a.icon_fold', 'click', function () {
		//			console.log(event.target);
		var domid = $(event.target).closest("div.task").attr("id");
		$("#" + domid).toggleClass('child_fold');
		$("#" + domid).toggleClass('child_unfold');
	});

	//标题点击行为
	$("body").delegate('.task_title', 'click', function () {
		current_domid = $(event.target).closest("div.task").attr("id");
		disp_current_page();
		$("#showarea").removeClass("tree_view");
		$("#showarea").addClass("page_view");
		/* 		$("div.task.current_page").removeClass("current_page");
				$("#"+domid).addClass("current_page");
		//		$("#"+domid).show();
		//		$("#"+domid).parents("div.task").show();
		//		$("#"+domid).parents("div.task").children("span").hide();
				
					var newpage=Number($("#"+current_domid).attr("data-page"))-1;
			current_domid=$("div.task[data-page="+newpage+"]").attr("id");
			 */
	});

	//树型视图点击行为
	$("body").delegate('.btn_tree_view', 'click', function () {
		var domid = $(event.target).parents("div.task").first().attr("id");
		//		$("div.task").hide();
		$("div.task.current_page").removeClass("current_page");
		$("#" + domid).addClass("current_page");
		//		$("#"+domid).show();
		//		$("#"+domid).parents("div.task").show();
		//		$("#"+domid).parents("div.task").children("span").hide();
		$("#showarea").toggleClass("page_view");
		$("#showarea").toggleClass("tree_view");

	});
});	//end of $(document).ready事件